rle algorithm